﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;

public partial class GioHang : System.Web.UI.Page
{
    private void RefreshLuoi()
    {
        GioHangMua giohang = new GioHangMua();
        giohang = Session["GioHang"] as GioHangMua;
        lbl_tongcong.Text = giohang.TongTien().ToString("0,0", System.Globalization.CultureInfo.InvariantCulture) + " VNĐ ";
        grv_giohang.DataSource = giohang.listGioHang;
        grv_giohang.DataBind();
        if (giohang.listGioHang.Count > 0)
        {
            lbl_thongbao.Visible = false;
        }
        else
        {
            lbl_thongbao.Visible = true;
        }
    }

    protected void Page_Load(object sender, EventArgs e)
    {
        if (IsPostBack == false)
        {
            RefreshLuoi();
        }
    }

    protected void grv_giohang_RowCommand(object sender, GridViewCommandEventArgs e)
    {
        GioHangMua giohang = new GioHangMua();
        giohang = Session["GioHang"] as GioHangMua;
        if (e.CommandName == "nutxoa")
        {
            int n = int.Parse(e.CommandArgument.ToString());
            giohang.XoaSanPham(n);
            Session["GioHang"] = giohang;
            RefreshLuoi();
        }
    }

    protected void cmd_tieptucmua_Click(object sender, EventArgs e)
    {
        Response.Redirect("~/Default.aspx");
    }

    protected void cmd_xoagiohang_Click(object sender, EventArgs e)
    {
        Session["GioHang"] = new GioHangMua();
        RefreshLuoi();
    }

    protected void cmd_capnhap_Click(object sender, EventArgs e)
    {
        GioHangMua giohang = Session["GioHang"] as GioHangMua;
        for (int i = 0; i < grv_giohang.Rows.Count; i++)
        {
            GridViewRow r = grv_giohang.Rows[i];
            TextBox txt = (TextBox)r.FindControl("txt_soluong");
            if (giohang.listGioHang[i].Soluong.ToString() != txt.Text)
            {
                int n;
                if (int.TryParse(txt.Text, out n) == false)
                {
                    MessengeBox.Show(this, "Số lượng chỉ được nhập số nguyên");
                    break;
                }
                else
                {
                    if (n > 0)
                    {
                        giohang.CapNhatSoLuong(i, n);
                    }
                    else
                    {
                        MessengeBox.Show(this, "Số lượng phải lớn hơn 0");
                    }
                }
            }
        }
        Session["GioHang"] = giohang;
        RefreshLuoi();
    }

    protected void cmd_thanhtoan_Click(object sender, EventArgs e)
    {
        GioHangMua giohang = new GioHangMua();
        giohang = Session["GioHang"] as GioHangMua;
        DataTable dtKhachHang = new DataTable();
        dtKhachHang = Session["KhachHang"] as DataTable;
        if (dtKhachHang.Rows.Count > 0 && giohang.listGioHang.Count > 0)
        {
            Response.Redirect("~/ThanhToan.aspx");
        }
        else if (giohang.listGioHang.Count == 0)
        {
            MessengeBox.Show(this, "Hiện giỏ hàng của bạn chưa có sản phẩm để thanh toán.");
        }
        else if (dtKhachHang.Rows.Count == 0)
        {
            MessengeBox.Show(this, "Vui lòng đăng nhập trước khi thanh toán.");
        }
    }
}
